home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
et
/
et3_0-a1.lha
/
et3
/
src
/
Manager.h
< prev
next >
Wrap
C/C++ Source or Header
|
1992-07-16
|
3KB
|
128 lines
#ifndef Manager_First
#ifdef __GNUG__
//pragma once
#pragma interface
#endif
#define Manager_First
#include "EvtHandler.h"
#include "Point.h"
#include "WindowSystem.h"
#include "Window.h"
class Menu;
class ObjList;
class CommandProcessor;
class Application;
class Window;
class Command;
class MenuBar;
class VObject;
class Button;
class Token;
class OrdCollection;
class TextViewOverlay;
enum MgrDismiss {
eMgrClose,
eMgrHide,
eMgrIconize
};
//---- Manager -----------------------------------------------------------------
class Manager : public EvtHandler {
public:
MetaDef(Manager);
Manager(char *title= 0, MgrDismiss md= eMgrHide, WindowType wt= eWinStandard);
Manager(Manager*, char *title= 0, MgrDismiss md= eMgrHide, WindowType wt= eWinStandard);
~Manager();
//---- misc
void Init(Manager*, char *name, MgrDismiss oc, WindowType wt);
virtual void SetName(char *name);
char *GetName();
bool IsEqual(Object*);
bool IsOpen();
void CollectParts(Collection*);
void InspectorId(char *buf, int bufSize);
//---- change management
CommandProcessor *GetCmdP();
virtual CommandProcessor *MakeCmdProcessor();
void ClearCmdProcessor();
//---- managers
virtual void Open();
void OpenAt(VObject *fp, Point p, bool resize= FALSE, bool block= FALSE);
virtual bool Close(); // return TRUE if OK
virtual void Show();
virtual int Run();
void Hide();
virtual bool AboutToDismiss();
bool Dismiss();
virtual void Iconize();
Iterator *MakeIterator();
int Size();
virtual void AddManager(Manager*);
virtual void RemoveManager(Manager*);
virtual Manager *FindManager(int id);
void SetNextManager(Manager *mp);
EvtHandler *GetNextHandler();
virtual int UniqueId();
//---- events
void SetActive(bool);
void InputKbd(Token &t);
void SetFirstHandler(EvtHandler *eh);
EvtHandler *GetFirstHandler()
{ return firstHandler; }
Button *GetDefaultButton();
void TabFields(Token &t);
void ExtCommand(int from, char *req, char *args, int len, char *&ret, int &retlen);
void Control(int id, int part, void *vp);
void SendDown(int id, int part, void *val);
TextViewOverlay *GetTextViewOverlay();
//---- windows
virtual Window *DoMakeWindows();
virtual VObject *DoMakeContent();
virtual VObject *DoMakeIconContent();
virtual void MakeWindows();
virtual Point GetInitialPos(Point e);
virtual Point GetInitialWindowPos();
virtual Point GetInitialWindowSize();
virtual void SetWindowTitle(char *title);
Window *GetWindow();
void SetOnDismiss(MgrDismiss md);
//---- menues
virtual MenuBar *DoMakeMenuBar();
virtual Menu *MakeMenu(int menuId);
void DoSetupMenu(Menu*);
Command *DoMenuCommand(int);
void PerformCommand(Command*);
Menu *GetMenu();
MenuBar *GetMenuBar();
protected:
WindowType wtype;
WindowFlags wflags;
private:
Manager *nextManager;
OrdCollection *managers;
Menu *menu;
MenuBar *menubar;
Window *window;
EvtHandler *firstHandler;
CommandProcessor *cmdp;
MgrDismiss dismiss;
char *name;
TextViewOverlay *tvo;
};
#endif